package com.hp.dao;

import com.hp.entity.Cart;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author: LiuQiang
 * @Date: 2021/11/8 14:57
 * @Description
 */
@Mapper
public interface CartDao {

    /**
     * 通过good_id和user_id查询
     * @param goodId
     * @param userId
     * @return
     */
    List<Cart> selectCartsByAll(@Param("goodId") Integer goodId,@Param("userId")  Integer userId);

    /**
     * 购物车新增商品，数量+1
     * @param amount
     * @param goodId
     * @param userId
     * @return
     */
    int updateCartsByAmount(@Param("amount") Integer amount,@Param("goodId") Integer goodId,@Param("userId") Integer userId);

    /**
     * 添加购物车商品
     * @param cart
     * @return
     */
    int addCart(Cart cart);

    /**
     * 购物车的增加和减少
     * @param subtract
     * @param add
     * @param id
     * @return
     */
    int updateCartsByAmountSubtractAndAdd(Integer subtract,Integer add,Integer id);

    /**
     * 根据id删除购物车的商品信息
     * @param id
     * @return
     */
    int deleteCartById(Integer id);

    /**
     * 根据user_id删除购物车的商品信息
     * @param userId
     * @return
     */
    int deleteCartByUserId(Integer userId);
}
